
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<HTML>

<HEAD>
   <TITLE>cnmfrm_c</TITLE>
</HEAD>

<BODY style="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);">
<A name="TOP"></A>

<table style="text-align: left; margin-left: auto; margin-right: auto; width: 800px;"
 border="0" cellpadding="5" cellspacing="2">
  <tbody>
    <tr>
      <td style="background-color: rgb(153, 153, 153); vertical-align: middle; text-align: center;">
      <div align="right"> 
      <small><small><a href="index.html">Index Page</a></small></small>
      </div>
      <b>cnmfrm_c</b> </td>
    </tr>

    <tr>
      <td style="vertical-align: top;">

<small><div align="center">
<A HREF="index.html#A">A</A>&nbsp;
<A HREF="index.html#B">B</A>&nbsp;
<A HREF="index.html#C">C</A>&nbsp;
<A HREF="index.html#D">D</A>&nbsp;
<A HREF="index.html#E">E</A>&nbsp;
<A HREF="index.html#F">F</A>&nbsp;
<A HREF="index.html#G">G</A>&nbsp;
<A HREF="index.html#H">H</A>&nbsp;
<A HREF="index.html#I">I</A>&nbsp;
<A HREF="index.html#J">J</A>&nbsp;
<A HREF="index.html#K">K</A>&nbsp;
<A HREF="index.html#L">L</A>&nbsp;
<A HREF="index.html#M">M</A>&nbsp;
<A HREF="index.html#N">N</A>&nbsp;
<A HREF="index.html#O">O</A>&nbsp;
<A HREF="index.html#P">P</A>&nbsp;
<A HREF="index.html#Q">Q</A>&nbsp;
<A HREF="index.html#R">R</A>&nbsp;
<A HREF="index.html#S">S</A>&nbsp;
<A HREF="index.html#T">T</A>&nbsp;
<A HREF="index.html#U">U</A>&nbsp;
<A HREF="index.html#V">V</A>&nbsp;
<A HREF="index.html#W">W</A>&nbsp;
<A HREF="index.html#X">X</A>&nbsp;
</div></small>
       <br>
       <table style="text-align: left; width: 60%; margin-left: auto; margin-right: auto;"
       border="0" cellspacing="2" cellpadding="2">
        <tbody>
          <tr>
            <td style="width: 50%; text-align: center;">
            <small>
              <a href="#Procedure">Procedure<br></a>
              <a href="#Abstract">Abstract<br></a>
              <a href="#Required_Reading">Required_Reading<br></a>
              <a href="#Keywords">Keywords<br></a>
              <a href="#Brief_I/O">Brief_I/O<br></a>
              <a href="#Detailed_Input">Detailed_Input<br></a>

              </small>
              </td>
              <td style="vertical-align: top; width: 50%; text-align: center;">
              <small>               <a href="#Detailed_Output">Detailed_Output<br></a>
              <a href="#Parameters">Parameters<br></a>
              <a href="#Exceptions">Exceptions<br></a>
              <a href="#Files">Files<br></a>
              <a href="#Particulars">Particulars<br></a>
              <a href="#Examples">Examples<br></a>

              </small>
              </td>
              <td style="vertical-align: top; width: 50%; text-align: center;">
              <small>               <a href="#Restrictions">Restrictions<br></a>
              <a href="#Literature_References">Literature_References<br></a>
              <a href="#Author_and_Institution">Author_and_Institution<br></a>
              <a href="#Version">Version<br></a>
              <a href="#Index_Entries">Index_Entries<br></a>
             </small>
            </td>
          </tr>
        </tbody>
</table>

<h4><a name="Procedure">Procedure</a></h4>
<PRE>
   void cnmfrm_c ( ConstSpiceChar   * cname,
                   SpiceInt           lenout,
                   SpiceInt         * frcode,
                   SpiceChar        * frname,
                   SpiceBoolean     * found   ) 

</PRE>
<h4><a name="Abstract">Abstract</a></h4>
<PRE>
 
   Retrieve frame ID code and name to associate with an object. 
 </PRE>
<h4><a name="Required_Reading">Required_Reading</a></h4>
<PRE>
 
   None. 
 </PRE>
<h4><a name="Keywords">Keywords</a></h4>
<PRE>
 
   FRAMES 
 

</PRE>
<h4><a name="Brief_I/O">Brief_I/O</a></h4>
<PRE>
 
   VARIABLE  I/O  DESCRIPTION 
   --------  ---  -------------------------------------------------- 
   cname      I   Name of the object to find a frame for.
   lenout     I   Maximum length available for frame name.
   frcode     O   The ID code of the frame associated with cname.
   frname     O   The name of the frame with ID frcode.
   found      O   SPICETRUE if the requested information is available. 
 </PRE>
<h4><a name="Detailed_Input">Detailed_Input</a></h4>
<PRE>
 
   cname          is the name for object for which there is a 
                  preferred reference frame.
 
   lenout         is the amount of space available, counting the
                  space required for the terminating null character,
                  in the output string frname.  Normally lenout is
                  the declared length of frname.
                  </PRE>
<h4><a name="Detailed_Output">Detailed_Output</a></h4>
<PRE>
 
   frcode         is the frame id-code to associate with a the object 
                  specified by cname. 
 
   frname         is the name of the frame that should be associated 
                  with the object specified by cname. 
 
   found          is SPICETRUE if the appropriate frame id-code and 
                  frame name can be determined.  Otherwise found is
                  returned with the value SPICEFALSE. 
 </PRE>
<h4><a name="Parameters">Parameters</a></h4>
<PRE>
 
   None. 
 </PRE>
<h4><a name="Exceptions">Exceptions</a></h4>
<PRE>
 
    1) If either cname or frname is a null pointer, the error 
       SPICE(NULLPOINTER) will be signaled.
       
    2) If cname has length zero, the error SPICE(EMPTYSTRING) will
       be signaled.
       
    3) If lenout is less than 1, the error SPICE(STRINGTOOSHORT) will
       be signaled. 
 
    4) If the output string is too short to contain the frame name, 
       the result is truncated on the right.  The output string is still 
       null-terminated.
       </PRE>
<h4><a name="Files">Files</a></h4>
<PRE>
 
   None. 
 </PRE>
<h4><a name="Particulars">Particulars</a></h4>
<PRE>
 
   This routine allows the caller to determine the frame that should 
   be associated with a particular object.  For example, if you 
   need the frame to associate with the Io, you can call <b>cnmfrm_c</b> 
   to determine the frame name and id-code for the bodyfixed frame 
   of Io. 
 
   The preferred frame to use with an object is specified via one 
   of the kernel pool variables: 
 
       OBJECT_&lt;cname&gt;_FRAME 
 
   where &lt;cname&gt; is the non-blank portion of the string CNAME. 
 
   For those PCK objects that have &quot;built-in&quot; frame names this 
   routine returns the corresponding &quot;IAU&quot; frame and frame ID code. 
 </PRE>
<h4><a name="Examples">Examples</a></h4>
<PRE>
 
   Suppose that you want to determine the state of a target 
   in the preferred reference frame of some observer.  This 
   routine can be used in conjunction with <a href="spkezr_c.html">spkezr_c</a> to compute 
   the state. 
 
      #include &lt;stdio.h&gt;
      #include &lt;stdlib.h&gt;
      #include &quot;SpiceUsr.h&quot;
          .
          .
          .
      #define LENOUT     80
      
      <b>cnmfrm_c</b> ( obsnam, LENOUT, &amp;frcode, frname, &amp;found );
 
      if ( !found ) 
      {
         printf ( &quot;The bodyfixed frame for object %s &quot;
                  &quot;could not be identified.\n&quot;,        
                  obsnam                               );
         exit(1);
      }
 
      <a href="spkezr_c.html">spkezr_c</a> ( target, et, frname, abcorr, obsnam, state, &amp;lt );
       
 </PRE>
<h4><a name="Restrictions">Restrictions</a></h4>
<PRE>
 
   None. 
 </PRE>
<h4><a name="Literature_References">Literature_References</a></h4>
<PRE>
 
   None. 
 </PRE>
<h4><a name="Author_and_Institution">Author_and_Institution</a></h4>
<PRE>
 
   N.J. Bachman    (JPL)
   W.L. Taber      (JPL) 
 </PRE>
<h4><a name="Version">Version</a></h4>
<PRE>
 
   -CSPICE Version 1.0.0, 25-JUN-1999 (NJB) (WLT)
</PRE>
<h4><a name="Index_Entries">Index_Entries</a></h4>
<PRE>
 
   Fetch reference frame attributes 
 </PRE>
<h4>Link to routine cnmfrm_c source file <a href='../../../src/cspice/cnmfrm_c.c'>cnmfrm_c.c</a> </h4>

      </td>
    </tr>
  </tbody>
</table>

   <pre>Wed Jun  9 13:05:20 2010</pre>

</body>
</html>

